package com.elmcode.study.design.pro07_decorator.decorator;

import com.elmcode.study.design.pro07_decorator.Drink;

/**
 * 装饰者
 */
public class Decorator extends Drink {

    /**
     * obj 表示被装饰者  这里表示咖啡
     */
    private Drink obj;

    public Decorator(Drink obj) {
        this.obj = obj;
    }

    @Override
    public float cost() {
        //getPrice 自己的价格+咖啡的价格
        return super.getPrice() + obj.cost();
    }

    @Override
    public String getDes() {
        // obj.getDes() 输出被装饰者的信息
        return des+"价格为:"+getPrice() + "加上:" + obj.getDes();
    }
}
